<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Vue</title>
  <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
</head>
<body>
  <div id="root"></div>
  <script>
    // 注册或获取全局过滤器。
    // 场景：可被用于一些常见的文本格式化
    // 可以用在两个地方：双花括号插值和 v-bind 表达式
    var Profile = Vue.extend({
      template: '<p>{{firstName | capitalize}} {{lastName}} aka {{alias}} {{obj.a}}</p>',
      data: function () {
        return {
          firstName: 'walter',
          lastName: 'white',
          alias: 'heisenberg',
          obj: {
            a: 1
          }
        }
      }
    })

    // 过滤器(注：需放在实例化之前)
    Vue.filter('capitalize', (val) => {
      if(!val) return '';
      val = val.toString();
      return val.charAt(0).toUpperCase() + val.slice(1)
    })
    
    new Profile().$mount('#root');
</script>
</body>
</html>